From: Ray Strode Date: Wed, 20 Feb 2013 02:51:41 +0000 (-0500) Subject: screenShield: don't use Bin for BackgroundManager container X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4706 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=34443da7abf84b0359901cfeee9518fd40a47038;p=gnome-shell.git screenShield: don't use Bin for BackgroundManager container St.Bin() really only expects one child at a time, and the BackgroundManager will add two. This can cause assertion failures when destroying one of the background actors. https://bugzilla.gnome.org/show_bug.cgi?id=694227 --- diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 0edb7c3ea..5ab593f4f 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -540,7 +540,10 @@ const ScreenShield = new Lang.Class({ _createBackground: function(monitorIndex) { let bin = new St.Bin({ style_class: 'screen-shield-background' }); - let bgManager = new Background.BackgroundManager({ container: bin, + let group = new Meta.BackgroundGroup(); + bin.child = group; + + let bgManager = new Background.BackgroundManager({ container: group, monitorIndex: monitorIndex, effects: Meta.BackgroundEffects.BLUR | Meta.BackgroundEffects.DESATURATE });